package com.iframe;


import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;

/**
 * @author liyiruo
 * @Description
 * @Date 2024/5/28 下午1:45
 */
public class MainFrame extends JFrame {

    private JComboBox<String> comboBox;
    private JTextArea resultArea;

    public MainFrame() {
        setTitle("查询工具");
        setSize(400, 300);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        // 创建下拉框
        comboBox = new JComboBox<>();
        comboBox.addItem("选项1");
        comboBox.addItem("选项2");
        comboBox.addItem("选项3");

        // 创建查询按钮
        JButton queryButton = new JButton("查询");
        queryButton.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                // 获取下拉框中选中的内容
                String selectedItem = (String) comboBox.getSelectedItem();

                // 模拟查询操作，这里直接将结果显示在文本区域中
                String queryResult = "查询到的数据：\n";
                queryResult += "选中的选项是：" + selectedItem + "\n";
                // 这里可以根据选中的选项执行查询操作，获取真实数据
                queryResult+=new Random().nextInt(10000);
                // 更新文本区域显示结果
                resultArea.setText(queryResult);
            }
        });

        // 创建面板并设置水平布局
        JPanel panel = new JPanel();
        panel.setLayout(new FlowLayout());

        // 将下拉框和查询按钮添加到面板中
        panel.add(comboBox);
        panel.add(queryButton);

        // 创建文本区域
        resultArea = new JTextArea();
        resultArea.setEditable(false);

        // 添加组件到窗口中
        Container contentPane = getContentPane();
        contentPane.setLayout(new BorderLayout());
        contentPane.add(panel, BorderLayout.NORTH); // 将面板添加到窗口的上方
        contentPane.add(new JScrollPane(resultArea), BorderLayout.CENTER); // 将文本区域添加到窗口的中间
    }

    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {
            @Override
            public void run() {
                MainFrame frame = new MainFrame();
                frame.setVisible(true);
            }
        });
    }
}

